<?php
namespace Pay\Controller;
use Think\Controller;
/**
 * 微信支付
 */
class WeixinpayController extends Controller{

    /**
     * notify_url接收页面
     */
    public function notify(){
        // 导入微信支付sdk
        Vendor('Weixinpay.Weixinpay');
        $wxpay=new \Weixinpay();
        $result=$wxpay->notify();
        if ($result) {
            // 验证成功 修改数据库的订单状态等 $result['out_trade_no']为订单号
            
        }
    }

    /**
     * 公众号支付 必须以get形式传递 out_trade_no 参数
     * 示例请看 /Application/Home/Controller/IndexController.class.php
     * 中的weixinpay_js方法
     */
    public function pay(){
		
        // 导入微信支付sdk
        //Vendor('Weixinpay.Weixinpay');
        //$wxpay=new \Weixinpay();
        $wxpay=new \Pay\Lib\Weixinpay();
        // 获取jssdk需要用到的数据
        $data=$wxpay->getParameters();
        // 将数据分配到前台页面
        $assign=array(
            'data'=>json_encode($data)
            );
        $this->assign($assign);
        $this->display();
    }
	
	/**
     * 微信 公众号jssdk支付
	 * 测试地址: http://tc.cc/Pay/Weixinpay/weixinpay_js
	 * 线上地址: http://bjy.dakaifa.net/Pay/Weixinpay/weixinpay_js
     */
	public function weixinpay_js(){
        // 此处根据实际业务情况生成订单 然后拿着订单去支付

        // 用时间戳虚拟一个订单号  （请根据实际业务更改）
        $out_trade_no=time();
        // 组合url
        $url=U('Pay/Weixinpay/pay',array('out_trade_no'=>$out_trade_no));
        // 前往支付
        redirect($url);
    }

}